<?xml version="1.0" encoding="utf-8" ?>

<Syntax name="VHDL">
	<HighlightWordsRule name="Reserved language words">
		<Words>
			abs access after alias all and architecture array
			assert attribute begin block body buffer bus case
			component configuration constant disconnect downto
			else elsif end entity exit file for function generate
			generic group guarded if impure in inertial inout is
			label library linkage literal loop map mod nand new next
			nor not null of on open or others out package port
			postponed procedure process pure range record register
			reject report return rol ror select severity signal shared sla
			sli sra srl subtype then to transport type unaffected
			units until use variable wait when while with xnor xor
		</Words>
		<IgnoreCase>true</IgnoreCase>
		<Foreground>#0080FF</Foreground>
		<FontWeight>Bold</FontWeight>
		<FontStyle>Normal</FontStyle>
	</HighlightWordsRule>

	<HighlightWordsRule name="Standard packages">
		<Words>
			std ieee work standard textio std_logic_1164 std_logic_arith
			std_logic_misc std_logic_signed std_logic_textio
			std_logic_unsigned numeric_bit numeric_std math_complex
			math_real vital_primitives vital_timing
		</Words>
		<IgnoreCase>true</IgnoreCase>
		<Foreground>#C00080</Foreground>
		<FontWeight>Normal</FontWeight>
		<FontStyle>Normal</FontStyle>
	</HighlightWordsRule>

	<HighlightWordsRule name="Standard types">
		<Words>
			boolean bit character severity_level integer real time
			delay_length natural positive string bit_vector file_open_kind
			file_open_status line text side width std_ulogic
			std_ulogic_vector std_logic std_logic_vector X01 X01Z UX01 UX01Z
			unsigned signed
		</Words>
		<IgnoreCase>true</IgnoreCase>
		<Foreground>#8000FF</Foreground>
		<FontWeight>Normal</FontWeight>
		<FontStyle>Normal</FontStyle>
	</HighlightWordsRule>

	<HighlightWordsRule name="Standard functions">
		<Words>
			now readline read writeline write endfile resolved to_bit
			to_bitvector to_stdulogic to_stdlogicvector to_stdulogicvector
			to_x01 to_x01z to_UX01 rising_edge falling_edge is_x shift_left
			shift_right rotate_left rotate_right resize to_integer to_unsigned
			to_signed std_match to_01
		</Words>
		<IgnoreCase>true</IgnoreCase>
		<Foreground>#0080FF</Foreground>
		<FontWeight>Normal</FontWeight>
		<FontStyle>Normal</FontStyle>
	</HighlightWordsRule>

	<HighlightLineRule name="Comments">
		<LineStart>--</LineStart>
		<IgnoreCase>false</IgnoreCase>
		<Foreground>#009933</Foreground>
		<FontWeight>Normal</FontWeight>
		<FontStyle>Normal</FontStyle>
	</HighlightLineRule>

	<AdvancedHighlightRule name="Numbers">
		<Expression>\b([0-9]+)\b</Expression>
		<IgnoreCase>false</IgnoreCase>
		<Foreground>#F68A1B</Foreground>
		<FontWeight>Normal</FontWeight>
		<FontStyle>Normal</FontStyle>
	</AdvancedHighlightRule>
</Syntax>
